1. Field of the Invention
This invention relates to a public key cryptographic system.
2. Description of the Related Art
In a public key cryptosystem, a plain text message may be encrypted by inputting the message and an enciphering key to an encryption algorithm. To decipher the message, the encrypted message is input to the inverse of the same algorithm along with a deciphering key. As with many encryption techniques, the encryption algorithm effects transformations of the plain text message which are so complicated it is computationally infeasible to reverse the process even if the algorithm is known. A peculiarity of public key systems is that it is also computationally infeasible to determine the deciphering key from the enciphering key. Consequently, in a public key cryptosystem, both the algorithm and the enciphering key may be made available to the public without jeopardising the security of a message enciphered with the enciphering key. Hence the term "public key" for the enciphering key. The deciphering key, which is confidential, is known as a "private key". With a public key system, anyone who wishes to receive encrypted messages may make an encryption algorithm and a public key freely available. Moreover, some public key systems allow the transmission of a "digital signature" that prevents forgery of messages by a receiver as well as a third party.
By way of example, with the known "knapsack" cryptosystem, a public key is derived from a private key utilising modular arithmetic. Each element in the array (vector) forming a private key is multiplied by a large prime number, x, and divided by a second large prime number, y. The corresponding element of the public key vector is the remainder from this operation. In order to encrypt a plain text message, the message is digitised and the digital string grouped into arrays (vectors) each having the same number of elements as the number of elements in the array which comprises the public key. The encrypted message is formed from the vector dot product of the public key vector with each vector formed from the digitised plain text message.
Clearly the exemplary encryption technique and the technique for deriving a public key from a private key make it computationally infeasible to determine either the private key or the plain text message even though the algorithm, along with the encrypted text, is known. There are, however, known techniques for structuring a private key vector such that, with it, the plain text can be rapidly derived from an encrypted message. Two sample techniques in this regard are described in an article entitled "The Mathematics of Public-Key Cryptography" Scientific American August 1979, pages 146 to 157.
The problem with such public key cryptograph systems is that, in use, they require a secure, yet readily available, private key. The private key has to either be remembered, which is not practical, or stored in a secure place and retrieved. The security of storage therefore is at best dependent on password access which itself can be compromised.
This invention seeks to overcome drawbacks of the known prior art and provide an extremely secure private key which is not even known by the user yet is readily accessible.